import axios from 'axios'

// 创建一个统一的实例，让整个网站的所有请求都有一些相同的配置
const instance = axios.create({
    // 全局统一的接口服务器地址
    baseURL: 'http://gz.wolfcode.cn/cms',
    // 统一配置请求超时
    timeout: 5000
})

const urlencoded = ['/sendSMS', '/phoneRegin', '/wechatUsers/PCLogin', '/wechatUsers/PCLogin']
// 设置请求拦截器，会在请求发送出去之前执行
instance.interceptors.request.use(config => {
    // config就是我们所有设置的 axios(config)
    // 当我们请求的是获取 短信验证码的时候，请求头要求的是 urlencoded
    if (urlencoded.includes(config.url)) {
        config.headers['Content-Type'] = 'application/x-www-form-urlencoded'
    }

    const token = localStorage.getItem('x-auth-token')
    if (token) {
        config.headers['x-auth-token'] = token
    }
    return config;
})

// 响应拦截器
instance.interceptors.response.use(res => {
    // 一般在响应拦截里面做一些数据加工
    return res.data;
})
export default instance;